﻿using EmbeddedSharp.Core;

namespace EmbeddedSharp.Scripting.Visualization
{
    public interface IVisualizationProvider
    {
        void AddLine(IUnaryParameterFunction func);
        
        void AddLine(IUnaryParameterFunction func, double from, double to);

        void AddCurve(IUnaryParameterFunction func);

        void AddCurve(string name, IUnaryParameterFunction func, double from, double to);

        void AddCurves(IUnaryParameterFunction[] functions);

        void AddCurves(IUnaryParameterFunction[] functions, double from, double to);

        void AddPoint(Point2D vertex);

        void AddLine(Point2D s, Point2D e);

        void SaveImage(string fileName);
    }
}
